// let Arr = [1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 5, 6];
// // 思路：准备一个新数组，循环遍历原数组，判断新数组中是否有该值
// // 没有则push进去。有不做任何操作。
// // 封装一个方法。
// function quchong(Arr) {
//   let newArr = [];
//   let len = Arr.length;
//   for (let i = 0; i < len; i++) {
//     if (newArr.indexOf(Arr[i]) === -1) {
//       newArr.push(Arr[i]);
//     }
//   }
//   return newArr;
// }

// console.log(quchong(Arr));
// indexOf() 方法返回值在字符串中第一次出现的位置。

// 如果未找到该值，则 indexOf() 方法返回 -1。
// indexOf() 方法可返回数组中某个指定的元素位置。
// 该方法将从头到尾地检索数组，看它是否含有对应的元素。开始检索的位置在数组 start 处或数组的开头（没有指定 start 参数时）。如果找到一个 item，则返回 item 的第一次出现的位置。开始位置的索引为 0。
// 如果在数组中没找到指定元素则返回 -1。

let Arr = [1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 5, 6];
// 数组去重
// 元素新数组中第一次出现的下标，是否和原数组遍历的索引一致
function quchong2(Arr) {
  return Arr.filter((item, index) => {
    return Arr.indexOf(item) === index;
  });
}
console.log(quchong2(Arr));
